package hl.model;
// Generated 2018-4-15 22:16:44 by Hibernate Tools 4.3.5.Final

import java.util.Date;
import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.FetchType;
import javax.persistence.GeneratedValue;
import static javax.persistence.GenerationType.IDENTITY;
import javax.persistence.Id;
import javax.persistence.JoinColumn;
import javax.persistence.ManyToOne;
import javax.persistence.Table;
import javax.persistence.Temporal;
import javax.persistence.TemporalType;

/**
 * TCard generated by hbm2java
 */
@Entity
@Table(name = "t_card", catalog = "matcha_gym")
public class TCard implements java.io.Serializable {

	private Long pkCard;
	private TMember TMember;
	private TStuff TStuff;
	private String cardType;
	private Date beginDate;
	private Date endDate;
	private Date payDate;
	private Date cdatetime;

	public TCard() {
	}

	public TCard(TMember TMember, TStuff TStuff, String cardType, Date beginDate, Date endDate, Date payDate, Date cdatetime) {
		this.TMember = TMember;
		this.TStuff = TStuff;
		this.cardType = cardType;
		this.beginDate = beginDate;
		this.endDate = endDate;
		this.payDate = payDate;
		this.cdatetime = cdatetime;
	}

	@Id
	@GeneratedValue(strategy = IDENTITY)

	@Column(name = "PK_CARD", unique = true, nullable = false)
	public Long getPkCard() {
		return this.pkCard;
	}

	public void setPkCard(Long pkCard) {
		this.pkCard = pkCard;
	}

	@ManyToOne(fetch = FetchType.LAZY)
	@JoinColumn(name = "PK_MEMBER")
	public TMember getTMember() {
		return this.TMember;
	}

	public void setTMember(TMember TMember) {
		this.TMember = TMember;
	}

	@ManyToOne(fetch = FetchType.LAZY)
	@JoinColumn(name = "PK_STUFF")
	public TStuff getTStuff() {
		return this.TStuff;
	}

	public void setTStuff(TStuff TStuff) {
		this.TStuff = TStuff;
	}

	@Column(name = "CARD_TYPE", length = 32)
	public String getCardType() {
		return this.cardType;
	}

	public void setCardType(String cardType) {
		this.cardType = cardType;
	}

	@Temporal(TemporalType.DATE)
	@Column(name = "BEGIN_DATE", length = 10)
	public Date getBeginDate() {
		return this.beginDate;
	}

	public void setBeginDate(Date beginDate) {
		this.beginDate = beginDate;
	}

	@Temporal(TemporalType.DATE)
	@Column(name = "END_DATE", length = 10)
	public Date getEndDate() {
		return this.endDate;
	}

	public void setEndDate(Date endDate) {
		this.endDate = endDate;
	}

	@Temporal(TemporalType.DATE)
	@Column(name = "PAY_DATE", length = 10)
	public Date getPayDate() {
		return this.payDate;
	}

	public void setPayDate(Date payDate) {
		this.payDate = payDate;
	}

	@Temporal(TemporalType.TIMESTAMP)
	@Column(name = "CDATETIME", length = 19)
	public Date getCdatetime() {
		return this.cdatetime;
	}

	public void setCdatetime(Date cdatetime) {
		this.cdatetime = cdatetime;
	}

}
